
# 列表
"""
1. 概念 ：是一个可以存放不同数据类型的序列，存放的数据是有顺序的，存放在里面的元素是可以修改的。
2. 定义(创建)：
    变量名 = [] or list()
    变量名 = [obj1,obj2,...]
"""

# 1. 列表的定义
alst = []
blst = list()
clst = ['hello',2,4.3,True,None,[]]

print(alst)
print(blst)
print(clst)

# 2. 获取其中一个元素 ，通过索引lst[index]
print("通过索引获取第4个元素:",clst[3])
# print("通过索引获取第4个元素:",clst[6])

# 2.2 使用循环进行查找元素
for x in clst:
    print(x)

# 3. 修改 通过索引修改
clst[2] = 9
print(clst)

# 4. 列表支持的方法
"""
list.index(obj)         : 从列表中找出某个元素的位置
list.count(obj)         : 从列表中查找出某个元素出现的次数          
list.insert(index,obj)  : 往列表中某个位置插入一个元素            **
list.append(obj)        : 向列表中插入一个元素                **
list.extend(seq)        : 向该俩表中插入另外一个序列中的数          **
list.pop(index)              : 删除对应索引的元素，若不传，就删除最后一个        **
list.clear()            : 删除所有元素
list.remove(obj)        : 删除列表中的某个元素
list.reverse()          : 列表翻转                          **
list.sort()             ：列表排序                           **
list.copy()             : 列表的拷贝
"""
print("========================")
dlst = ['java','c++','c','go','ruby','python','perl','c#','python']
print("查找Python所在的位置:",dlst.index('python'))
print("查找Python在列表中出现的次数",dlst.count('python'))

print("像列表中的第2个位置插入node")
dlst.insert(1,'node')
print(dlst)

print("向列表中添加一个元素，javascript")
dlst.append('javascript')
print(dlst)

print("像dlst中添加clst的元素")
dlst.extend(clst)
print(dlst)